package managers;

import java.util.List;

import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import javax.persistence.Query;

import messages_erreur.JMSEnvoi;

import Base.MessagesErreur;

/**
 * Session Bean implementation class MessagesErreurManager
 */
@Stateless(name = "MessagesErreurManagerBean")
public class MessagesErreurManager implements MessagesErreurManagerRemote {
	@PersistenceContext
	private EntityManager em;
    /**
     * Default constructor. 
     */
    public MessagesErreurManager() {
        // TODO Auto-generated constructor stub
    }

	@Override
	public void creerMessagesErreur(MessagesErreur m) {
		this.em.persist(m);
		
	}

	@Override
	public int IsTreated(int id) {
		Query q = em.createQuery(
				"SELECT etatMessage FROM MessagesErreur m where m.idMessage = :id").setParameter(
				"id", id);
		return Integer.parseInt(q.getResultList().get(0).toString());
	}

	@Override
	public MessagesErreur getMessagesErreurById(int id) {
		return em.find(MessagesErreur.class, id);
	}

	@SuppressWarnings("unchecked")
	@Override
	public List<MessagesErreur> getAllListMessagesErreur() {
		Query q = em.createQuery("FROM MessagesErreur m");
		return q.getResultList();
	}

	@Override
	public void setTreatedMessagesErreur(int id) {
		JMSEnvoi jmse = new JMSEnvoi();
		jmse.send("202:plkkgggggffggg");
		MessagesErreur m = getMessagesErreurById(id);
		m.setEtatMessage((byte) 1);
		em.merge(m);
		em.flush();
		
	}

	@Override
	public void SupprimerMessagesErreur(int id) {
	 	MessagesErreur m = getMessagesErreurById(id);
	 	em.remove(m);	
		
	}

}
